package entity;

import java.util.Date;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.Inheritance;
import javax.persistence.InheritanceType;
import javax.persistence.ManyToOne;
import javax.persistence.SequenceGenerator;
import javax.persistence.Table;

@Entity
@Inheritance(strategy=InheritanceType.JOINED)
@SequenceGenerator(name = "seq_pessoa_id", sequenceName = "seq_pessoa_id")
@Table(name="PESSOA")
public class Pessoa {

	@Id
	@GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "seq_pessoa_id")
	@Column(name="ID")
	private int id;

	@Column(name="NOME", nullable=false)
	private String nome;
	
	@Column(name="LOGINPESSOA", nullable=false)
	private String loginPessoa;

	@Column(name="SENHA", nullable=false)
	private String senha;
	
	@Column(name="EMAIL", nullable=false)
	private String email;
	
	@Column(name="TELEFONE", nullable=false)
	private String telefone;
	
	@Column(name="DATAREGISTRO", nullable=false)
	private Date dataRegistro;
	
	@ManyToOne
	private Endereco endereco;

	public int getId() {
		return id;
	}

	public void setId(int id) {
		this.id = id;
	}

	public String getNome() {
		return nome;
	}

	public void setNome(String nome) {
		this.nome = nome;
	}

	public String getLoginPessoa() {
		return loginPessoa;
	}

	public void setLoginPessoa(String loginPessoa) {
		this.loginPessoa = loginPessoa;
	}

	public String getSenha() {
		return senha;
	}

	public void setSenha(String senha) {
		this.senha = senha;
	}

	public String getEmail() {
		return email;
	}

	public void setEmail(String email) {
		this.email = email;
	}

	public String getTelefone() {
		return telefone;
	}

	public void setTelefone(String telefone) {
		this.telefone = telefone;
	}

	public Date getDataRegistro() {
		return dataRegistro;
	}

	public void setDataRegistro(Date dataRegistro) {
		this.dataRegistro = dataRegistro;
	}

	public Endereco getEndereco() {
		return endereco;
	}

	public void setEndereco(Endereco endereco) {
		this.endereco = endereco;
	}
}
